package com.hexinfo.dmpro.sparing.model;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;

import org.springframework.validation.annotation.Validated;

/**
 * 热备表级同步规则表
 *
 * @author yemw
 * @date 2024-04-26 10:16:47
 */
@Data
@Validated
@TableName("TD_TABLE_SYNC_CONF")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "热备表级同步规则表")
public class TableSyncConf extends Model<TableSyncConf> {
private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId(type= IdType.ASSIGN_UUID)
    @ApiModelProperty(value="id")
    private String id;
    /**
     * 源名
     */
    @ApiModelProperty(value="源名")
    private String sourceName;
    /**
     * 库名
     */
    @ApiModelProperty(value="库名")
    private String dbName;
    /**
     * 表名
     */
    @ApiModelProperty(value="表名")
    private String tbName;
    /**
     * 库表名
     */
    @ApiModelProperty(value="库表名")
    private String dbTbName;
    /**
     * 源分区值（多个值逗号隔开）
     */
    @ApiModelProperty(value="源分区值（多个值逗号隔开）")
    private String sourceValue;
    /**
     * 源分区
     */
    @ApiModelProperty(value="源分区")
    private String sourcePartition;
    /**
     * 日期分区
     */
    @ApiModelProperty(value="日期分区")
    private String datePartition;
    /**
     * 保留数据（月）
     */
    @ApiModelProperty(value="保留数据（月）")
    private String holdDataMonth;
    /**
     * 创建人
     */
    @ApiModelProperty(value="创建人")
    @TableField(fill = FieldFill.INSERT)
    private String createBy;
    /**
     * 创建时间
     */
    @ApiModelProperty(value="创建时间")
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" ,timezone = "GMT+8")
    private Date createTime;
    /**
     * 更新人
     */
    @ApiModelProperty(value="更新人")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String lastUpdateBy;
    /**
     * 更新时间
     */
    @ApiModelProperty(value="更新时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" ,timezone = "GMT+8")
    private Date lastUpdateTime;
    /**
     * 删除标识
     */
    @ApiModelProperty(value="删除标识")
    @TableField(fill = FieldFill.INSERT)
    private String del;

}
